    /*Pseudotrans - Codificador de pseudocodigo a lenguaje pascal
    Copyright (C) 2006  Alejandro Lucas Baldres, Nicolas Secreto
    Copyright (C) 2011  Alejandro Lucas Baldres

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

    Ultima Modificación: 12/10/11                                 
    Unidad Principal del programa  			       
    Unit main of the program*/
//Comment Modify: 12/10/2011
unit Main;

interface
var
Tipo_Pseudocodigo:Char; //P:Pascal y B:Basic
procedure Aplicacion_run;

implementation
uses
crt,SysUtils,ayuda,Op_principal;

const //Declaro Constantes / Declaration of Constants
Version='0.2.2.32';
Plataforma='Linux';
Fecha_Crea='28/11/06';

var
Creo_Archivo:Boolean=true;//Establezco si creo el archivo o agrego lineas / Stablish if create the file or add lines
Directorio_pto,Directorio_pse:String; //Almaceno la ruta del pseudocodigo / Save the road of pseudocode
Origen,Destino:String;//Path de Archivo en pseudocodigo y Path de Archivo fuente / Path of file in pseudocode and path of code file

procedure Aplicacion_run;
 begin
 //determino el directorio del programa / Determine program directory
Origen:=paramStr(1);
//Verifico que no sea la ayuda / Verify what dont help 
if paramStr(1)='' then Origen:='mannucleo';
if man (Origen,Fecha_crea,Plataforma,Version) then
 begin
 Destino:=paramStr(2);//Establezco el segundo parametro como archivo de destino / Stablish the second parameter as destine file
 while Destino='' do
	begin
	clrscr;
	write('Ingrese el nombre de archivo de Salida: ');
	readln(Destino);
	end;
 if FileExists(ParamStr(3)) then //Establesco diccionarios / Stablish Dictionaries
 	begin
 	Directorio_pse:=ParamStr(3);
 	Directorio_pto:=ParamStr(3)+'_pto';
 	end
   else begin
	{$IFDEF LINUX}
   	Directorio_pse:='/usr/share/pseudotrans/datos/unp';
   	Directorio_pto:='/usr/share/pseudotrans/datos/unp_pto';
	{$ELSE}
	Directorio_pse:='C:\pseudotrans\datos\unp';
   	Directorio_pto:='C:\pseudotrans\datos\unp_pto';
	{$ENDIF}   	
   	end;
 if FileExists(Origen) then //Si el Archivo fuente (Pseudo) existe procedo a realizar las opera / If pseudocode file exist proceed to operations
	 Cargo_y_traduzco (Origen,Version,fecha_crea,plataforma,destino,directorio_pse,directorio_pto)
  else writeln ('No existe el archivo: '+Origen);
 end;
end;
end.
